const path = require('path')
// 拼接路径
const resolve = dir => require('path').join(__dirname, dir);

//vuecli3配置大全 https://github.com/staven630/vue-cli4-config/tree/vue-cli3

module.exports = {
    // baseUrl 从 Vue CLI 3.3 起已弃用，请使用publicPath
    publicPath : process.env.NODE_ENV === 'production' ? './' : './', //资源文件夹，如果部署到根目录才能用/
	productionSourceMap: false,// 生产环境是否生成 sourceMap 文件,有效
	// webpack-dev-server 相关配置
	devServer : {
		port : 8090,
        publicPath : '/'
	},
    configureWebpack:{
        //配置要使用cdn的插件 https://segmentfault.com/q/1010000017056065
        /*externals: {
            'vue': 'Vue',
            'element-ui': 'ELEMENT',
	        'jquery':'$'
        }*/
    },

    // 默认设置  https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-service/lib/config/base.js
    chainWebpack : config => {
        const entry = config.entry('app');
	    // 修复HMR（热更新失效）
	    // config.resolve.symlinks(true)

        //配置图片转base64,如果这里没有配置，就不会转
	    config.module
		    .rule('images')
		    .use('url-loader')
		    .loader('url-loader')
		    .tap(options => Object.assign(options, { limit: 20000 }));//20k的才打包


        // 别名设置
        config.resolve.alias
            .set('@', resolve('src'))
            .set('@res', resolve('src/assets'));


        //如果是生产模式，则打包完成后显示打包分析工具
        if (process.env.NODE_ENV === 'production') {
            config
                .plugin('webpack-bundle-analyzer')
                .use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin)
        }
    },
    /* 使用less https://www.jianshu.com/p/aab8e9c06df1 */
    pluginOptions : {
        'style-resources-loader' : {
            preProcessor : 'less',
            patterns : ['E:\\work\\xgame\\src\\assets\\global.less'] //这行他妈是干什么的？？
        }
    }
};


console.log('当前环境模式：', process.env.NODE_ENV);
console.log('当前api请求前缀：', process.env.VUE_APP_BASE_API);
